import axios from 'axios'
import { getToken } from '@/utils/auth'

function download(form, downloadUrl, title) {
  axios({
    // 用axios发送post请求
    method: 'post',
    url: window.bossUrl.API_AAA + downloadUrl, // 请求地址
    headers: {
      'X-Token': getToken(),
      'Content-Type': 'application/json; application/octet-stream'
    },
    data: form, // 参数
    responseType: 'blob' // 表明返回服务器返回的数据类型
  })
    .then((res) => { // 处理返回的文件流
    // var fileDownload = require('js-file-download')
    // fileDownload(res.data, 'filenamex.xls')
      const content = res.data
      const blob = new Blob([content])
      const fileName = title + '.xlsx'
      if ('download' in document.createElement('a')) { // 非IE下载
        const elink = document.createElement('a')
        elink.download = fileName
        elink.style.display = 'none'
        elink.href = URL.createObjectURL(blob)
        document.body.appendChild(elink)
        elink.click()
        URL.revokeObjectURL(elink.href) // 释放URL 对象
        document.body.removeChild(elink)
      } else { // IE10+下载
        navigator.msSaveBlob(blob, fileName)
      }
    })
}

export { download }
